package com.zmn.plat.services.interfaces.push.notice;

import java.util.List;

import com.zmn.plat.model.entity.push.notice.PushNoticeAppPutPlat;

/**
 * 描述:app 公告投放平台接口类
 *
 * @author wangjie
 * @since 2020/3/24
 **/
public interface PushNoticeAppPutPlatService {

    /**
     * 描述: 根据主键查询数据
     *
     * @param key
     *            主键id
     * @return com.zmn.plat.model.entity.push.notice.PushNoticeAppPlat
     * @author wangjie
     * @since 2020/3/24
     **/
    PushNoticeAppPutPlat findByKey(Integer key);

    /**
     * 描述: 根据公告id查询推送app关系数据
     *
     * @param noticeId
     *            公告id
     * @return java.util.List<com.zmn.plat.model.entity.push.notice.PushNoticeAppPlat>
     * @author wangjie
     * @since 2020/3/24
     **/
    List<PushNoticeAppPutPlat> listByNoticeId(Integer noticeId);

    /**
     * 描述: 根据公告id查询推送app关系数据
     *
     * @param noticeIdList
     *            公告id
     * @return java.util.List<com.zmn.plat.model.entity.push.notice.PushNoticePutApp>
     * @author wangjie
     * @since 2020/3/24
     **/
    List<PushNoticeAppPutPlat> listByNoticeIdList(List<Integer> noticeIdList);

    /**
     * 描述: 批量新增
     *
     * @param pushNoticeAppPlatList
     *            app 推送关系数据
     * @param operator
     *            操作员
     * @author wangjie
     * @since 2020/3/24
     **/
    void insertBatch(List<PushNoticeAppPutPlat> pushNoticeAppPlatList, String operator);

    /**
     * 描述: 根据公告id删除推送app关系数据
     *
     * @param noticeId
     *            公告id
     * @author wangjie
     * @since 2020/3/24
     **/
    void deleteByNoticeId(Integer noticeId);
}
